package com.magina.project.mp.handler;

import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
import org.apache.ibatis.reflection.MetaObject;


public class MyMetaObjectHandler implements MetaObjectHandler {


    @Override
    public void insertFill(MetaObject metaObject) {
        
//        // 获取session中的用户信息
//        UserVo userVo = RequestContextProxy.getContextInfo();
//
//        // 插入默认的创建人ID字段
//        Object creatorId = getFieldValByName("creatorId", metaObject);
//        if (creatorId == null) {
//            setFieldValByName("creatorId", userVo != null ? userVo.getUsername() : BaseConstants.DEFAULT_SYSTEM, metaObject);
//        }
//        // 插入默认的更新人ID字段
//        Object modifierId = getFieldValByName("modifierId", metaObject);
//        if (modifierId == null) {
//            setFieldValByName("modifierId", userVo != null ? userVo.getUsername() : BaseConstants.DEFAULT_SYSTEM, metaObject);
//        }
//        // 插入默认的创建人字段
//        Object creator = getFieldValByName("creator", metaObject);
//        if (creator == null) {
//            setFieldValByName("creator", userVo != null ? userVo.getNickname() : BaseConstants.DEFAULT_SYSTEM_NAME, metaObject);
//        }
//        // 插入默认的更新人字段
//        Object modifier = getFieldValByName("modifier", metaObject);
//        if (modifier == null) {
//            setFieldValByName("modifier", userVo != null ? userVo.getNickname() : BaseConstants.DEFAULT_SYSTEM_NAME, metaObject);
//        }
//        // 默认的新建日期字段
//        Object created = getFieldValByName("created", metaObject);
//        if (created == null) {
//            setFieldValByName("created", new Date(), metaObject);
//        }
//        // 默认的更新日期字段
//        Object modified = getFieldValByName("modified", metaObject);
//        if (modified == null) {
//            setFieldValByName("modified", new Date(), metaObject);
//        }
//        // 插入默认的删除标记
//        Object operationFlag = getFieldValByName("operationFlag", metaObject);
//        if (operationFlag == null) {
//            setFieldValByName("operationFlag", BaseConstants.OPERATION_FLAG_ADD, metaObject);
//        }
    }


    @Override
    public void updateFill(MetaObject metaObject) {
        
//        // 获取session中的用户信息
//        UserVo userVo = RequestContextProxy.getContextInfo();
//
//        // 插入默认的更新人ID字段
//        Object modifierId = getFieldValByName("modifierId", metaObject);
//        if (modifierId == null) {
//            setFieldValByName("modifierId", userVo != null ? userVo.getUsername() : BaseConstants.DEFAULT_SYSTEM, metaObject);
//        }
//        // 插入默认的更新人字段
//        Object modifier = getFieldValByName("modifier", metaObject);
//        if (modifier == null) {
//            setFieldValByName("modifier", userVo != null ? userVo.getNickname() : BaseConstants.DEFAULT_SYSTEM_NAME, metaObject);
//        }
//        // 默认的更新日期字段
//        Object modified = getFieldValByName("modified", metaObject);
//        if (modified == null) {
//            setFieldValByName("modified", new Date(), metaObject);
//        }
    }

}
